home *** CD-ROM | disk | FTP | other *** search
/ BCI NET 2 / BCI NET 2.iso / archives / programming / gui / eagui30.lha / EAGUI / Modula2 / txt / EAGuiD.def next >
Encoding:
Modula Definition  |  1994-12-01  |  9.0 KB  |  207 lines

  1. (* REVISION HEADER ×××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××× *
  2.    
  3.  | $VER: EAGuiD.def 3.00 (23.11.94) by Stefan Schulz [sts]
  4.  
  5.  | Desc: Interface to EAGUI.library
  6.  
  7.  | Dist: This Module is © Copyright 1994 by Stefan Schulz
  8.  
  9.  | Rqrs: Amiga OS 2.0 or higher
  10.  |       EAGUI.library V3
  11.  |       EAGUI - Environment Adaptive Graphic User Interface
  12.  |       Copyright © 1993, 1994 by Marcel Offermans and Frank Groen
  13.  
  14.  | Lang: M2Amiga
  15.  | Trns: M2Amiga Modula 2 Software Development System
  16.  |       © Copyright by A+L AG, CH-2540 Grenchen
  17.  
  18.  | Hist: Version \date\
  19.  |
  20.  |       3.00   \23.11.94\
  21.  |              interface adapted to EAGUI.library V3
  22.  |              names changed to M2-Standard
  23.  |
  24.  |       1.00   \01.05.94\
  25.  |              initial Version
  26.  
  27.  * ×××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××× *)
  28.  
  29. DEFINITION MODULE EAGuiD; (*$ Implementation:= FALSE *)
  30.  
  31. (* IMPORTS ********************************************************************** *)
  32.  
  33. IMPORT  ed      : ExecD,
  34.         gd      : GraphicsD,
  35.         S       : SYSTEM,
  36.         ud      : UtilityD;
  37.  
  38. (* ****************************************************************************** *)
  39.  
  40. (* ------------------------------------------------------------------------------ *)
  41. (* library name and version                                                       *)
  42. (* ------------------------------------------------------------------------------ *)
  43.  
  44. CONST   eaguiName               = "EAGUI.library";
  45.         eaguiVersion            = 3;
  46.  
  47. (* ------------------------------------------------------------------------------ *)
  48. (* Object.type definitions                                                        *)
  49. (* ------------------------------------------------------------------------------ *)
  50.  
  51. CONST   typeHGroup            = 1;
  52.         typeVGroup            = 2;
  53.         typeGTGadget          = 3;
  54.         typeBoopsiGadget      = 4;
  55.         typeCustomImage       = 5;
  56.         typeBoopsiImage       = 6;
  57.  
  58. (* ------------------------------------------------------------------------------ *)
  59. (* various LONG attributes can have an unknown value at some point                *)
  60. (* ------------------------------------------------------------------------------ *)
  61.  
  62. CONST   unknown               = -1;
  63.  
  64. (* ------------------------------------------------------------------------------ *)
  65. (* error return codes                                                             *)
  66. (* ------------------------------------------------------------------------------ *)
  67.  
  68. CONST   errorOK               = 0;
  69.         errorOutOfMemory      = 100;
  70.         errorBadObject        = 101;
  71.  
  72. (* ------------------------------------------------------------------------------ *)
  73. (* flags for standard methods                                                     *)
  74. (* ------------------------------------------------------------------------------ *)
  75.  
  76. CONST   smNone                = 00000000H;
  77.         smMinSize             = 00000001H;
  78.         smBorder              = 00000002H;
  79.  
  80. (* ------------------------------------------------------------------------------ *)
  81. (* tags                                                                           *)
  82. (* ------------------------------------------------------------------------------ *)
  83.  
  84. CONST   tagBase               = ud.tagUser;
  85.  
  86.  
  87. (* ------------------------------------------------------------------------------ *
  88.  * These tags can be used under different circumstances. The characters in the    *
  89.  * comments behind the tags indicate the allowed use:                             *
  90.  *                                                                                *
  91.  * I = Initialize: NewObjectA()                                                   *
  92.  * S = Set:        SetAttrsA()                                                    *
  93.  * G = Get:        GetAttrsA()                                                    *
  94.  *                                                                                *
  95.  * Most functions ignore tags they don't recognize, but don't count on that,      *
  96.  * or side effects may occur in future versions.                                  *
  97.  * ------------------------------------------------------------------------------ *)
  98.  
  99. CONST   (* EaTags *)
  100.         dummy           = tagBase;
  101.         parent          = tagBase + 1;       (* I.G *)
  102.         type            = tagBase + 2;       (* ..G *)
  103.         disabled        = tagBase + 3;       (* ISG *)
  104.         id              = tagBase + 4;       (* ISG *)
  105.         minWidth        = tagBase + 5;       (* ISG *)
  106.         minHeight       = tagBase + 6;       (* ISG *)
  107.         borderLeft      = tagBase + 7;       (* ISG *)
  108.         borderRight     = tagBase + 8;       (* ISG *)
  109.         borderTop       = tagBase + 9;       (* ISG *)
  110.         borderBottom    = tagBase + 10;      (* ISG *)
  111.         left            = tagBase + 11;      (* .SG *)
  112.         top             = tagBase + 12;      (* .SG *)
  113.         width           = tagBase + 13;      (* ISG *)
  114.         height          = tagBase + 14;      (* ISG *)
  115.         weight          = tagBase + 15;      (* ISG *)
  116.         instance        = tagBase + 17;      (* ..G *)
  117.         instanceAddress = tagBase + 18;      (* ISG *)
  118.  
  119.         minSizeMethod   = tagBase + 19;      (* ISG *)
  120.         borderMethod    = tagBase + 20;      (* ISG *)
  121.         renderMethod    = tagBase + 21;      (* ISG *)
  122.         getStateMethod  = tagBase + 22;      (* ISG *)
  123.         setStateMethod  = tagBase + 23;      (* ISG *)
  124.  
  125.         object          = tagBase + 24;      (* I.. *)
  126.  
  127.         gtType          = tagBase + 25;      (* ISG *)
  128.         gtTagList       = tagBase + 26;      (* ISG *)
  129.         gtText          = tagBase + 27;      (* ISG *)
  130.         gtTextAttr      = tagBase + 28;      (* ISG *)
  131.         gtFlags         = tagBase + 29;      (* ISG *)
  132.  
  133.         boopsiPrivClass = tagBase+ 30;      (* ISG *)
  134.         boopsiPubClass  = tagBase + 31;      (* ISG *)
  135.         boopsiTagList   = tagBase + 32;      (* ISG *)
  136.  
  137.         child           = tagBase + 33;      (* I.. *)
  138.  
  139.         firstChild      = tagBase + 34;      (* ..G *)
  140.         nextObject      = tagBase + 35;      (* ..G *)
  141.  
  142.         standardMethod  = tagBase + 36;      (* IS. *)
  143.         userData        = tagBase + 37;      (* ISG *)
  144.  
  145.         defDisabled        = tagBase + 38;    (* .SG *)
  146.         defWeight          = tagBase + 39;    (* .SG *)
  147.         defMinSizeMethod   = tagBase + 40;    (* .SG *)
  148.         defBorderMethod    = tagBase + 41;    (* .SG *)
  149.         defRenderMethod    = tagBase + 42;    (* .SG *)
  150.         defGetStateMethod  = tagBase + 43;    (* .SG *)
  151.         defSetStateMethod  = tagBase + 44;    (* .SG *)
  152.         defGTType          = tagBase + 45;    (* .SG *)
  153.         defGTTagList       = tagBase + 46;    (* .SG *)
  154.         defGTText          = tagBase + 47;    (* .SG *)
  155.         defGTTextAttr      = tagBase + 48;    (* .SG *)
  156.         defGTFlags         = tagBase + 49;    (* .SG *)
  157.         defBoopsiPrivClass = tagBase + 50;    (* .SG *)
  158.         defBoopsiPubClass  = tagBase + 51;    (* .SG *)
  159.         defBoopsiTagList   = tagBase + 52;    (* .SG *)
  160.         defStandardMethod  = tagBase + 53;    (* .SG *)
  161.         defBorderLeft      = tagBase + 54;    (* .SG *)
  162.         defBorderRight     = tagBase + 55;    (* .SG *)
  163.         defBorderTop       = tagBase + 56;    (* .SG *)
  164.         defBorderBottom    = tagBase + 57;    (* .SG *)
  165.  
  166. (* ------------------------------------------------------------------------------ *
  167.  * Pointer to an object, which is used as a `handle' by a lot of functions.       *
  168.  * The actual data structure of the object is hidden from the application         *
  169.  * programmer.                                                                    *
  170.  * ------------------------------------------------------------------------------ *)
  171.  
  172. TYPE    OPTR               = S.ADDRESS;
  173.  
  174. TYPE    StrPtr             = S.ADDRESS; (* for readability *)
  175.  
  176. (* ------------------------------------------------------------------------------ *)
  177. (* This structure is READ-ONLY!                                                   *)
  178. (* ------------------------------------------------------------------------------ *)
  179.  
  180. TYPE    RelationObjectPtr  = POINTER TO RelationObject;
  181.         RelationObject     = RECORD
  182.  
  183.                              (* private *)
  184.                              node          : ed.Node;
  185.  
  186.                              (* attributes *)
  187.                              objectPtr     : OPTR;
  188.  
  189.                              END; (* RelationObject *)
  190.  
  191.  
  192. (* ------------------------------------------------------------------------------ *
  193.  * Message structure as used by the Render hook. A pointer to this structure is   *
  194.  * passed in the message parameter of the callback hook. For more information on  *
  195.  * hooks, take a look at amiga.lib/CallHook() or utility.library/CallHookPkt().   *
  196.  * ------------------------------------------------------------------------------ *)
  197.  
  198. TYPE    RenderMessagePtr = POINTER TO RenderMessage;
  199.         RenderMessage    = RECORD
  200.                            rootPtr       : OPTR;
  201.                            rastportPtr   : gd.RastPortPtr;
  202.                            END; (* RenderMessage *)
  203.  
  204.  
  205. END EAGuiD.def
  206.  
  207.